#ifndef __FONT_MANAGER_H
#define __FONT_MANAGER_H

#include "common.h"


typedef struct FontBitMap{
	/*int iLeftUpX;//字体左上角的x坐标
	int iLeftUpY;//字体左上角的y坐标
	int iWidth;//字体宽度
	int iRows;//字体高度（占用多少行）
	*/
	Region tRegion;//这里面有以上数据类型，所以可以直接用这个结构体来代替它
	//兼容free type
	int iCurOriginX;//当前基点的x坐标
	int iCurOriginY;//当前基点的y坐标
	int iNextOriginX;//下一个基点的x坐标
	int iNextOriginY;//下一个基点的y坐标

	unsigned char *pucBuffer;//字库地址
}FontBitMap,*PFontBitMap;
typedef struct FontOpr{
	char *name;//用free type还是用其他的
	int (*FontInit)(char *aFineName);//初始化
	int(*SetFontSize)(int iFontSize);//设置大小
	int (*GetStringRegionCar)(char *str,PRegionCartesian ptRegionCar);
	int (*GetFontBitMap)(unsigned char dwCode,PFontBitMap ptFontBitMap);//获得字库
	struct FontOpr *ptNext;
}FontOpr,*PFontOpr;
void RegisterFont(PFontOpr ptFonts);
void FontsRegister(void);
int SelectAndInitFont(char *aFontOprName,char *aFontFileName);//选择字库
int SetFontSize(int iFontSize);
int GetFontBitMap(unsigned char dwCode,PFontBitMap ptFontBitMap);
int GetStringRegionCar(char *str, PRegionCartesian ptRegionCar);



#endif

